package Levels 
{
	import flash.display.MovieClip;
	import Objetos.Heroi;
	/**
	 * ...
	 * @author Leandro Moreira Lopes
	 */
	public class Level3 extends Level
	{
		public var IN_delayUpgrade				:int;					/** * contador para o upgrade aparecer na tela*/
		public var IN_delayUpgradeOff			:int;					/** * contador para o upgrade desaparecer da tela*/
		public var TipoUpgrade					:Number;				/** * variavel que indica o tipo de tiro*/
		
		
		
		public function Level3() 
		{
			IN_delayUpgrade = 150;
			IN_delayUpgradeOff = 600;
		}
		
		
		public function desenharTela():void
		{
			MC_background = new Fase3();							/** * criacao do background*/
			Main.getInstance().MC_tela.addChild(MC_background);
			
			MC_heroi = new Heroi(1, 1, nave1);						/** * criacao do heroi no.1, passando por argumento qual o numero do player, o tipo de tiro e qual sera a nave1(variavel da classe LEVEL*/
			MC_heroi.x = 200;
			MC_heroi.y = 200;
			MC_heroi.gotoAndStop(1);
			MC_heroi.alpha = 0;
			Main.getInstance().MC_tela.addChild(MC_heroi);
			Level.AR_herois.push(MC_heroi);							/** * heroi 1 inserido na array de herois*/
			MC_HP1 = new HPplayer1();								/** * criação da barra de HP do player 1*/
			MC_HP1.x = 20;
			MC_HP1.y = 10;
			Main.getInstance().MC_tela.addChild(MC_HP1);
			
			MC_heroi = new Heroi(2, 2, nave2);						/** * criacao do heroi no.2, passando por argumento qual o numero do player, o tipo de tiro e qual sera a nave1(variavel da classe LEVEL*/
			MC_heroi.x = 600;
			MC_heroi.y = 400;
			MC_heroi.gotoAndStop(1);
			MC_heroi.rotation = 180;								/** * deixando o player 2 virado para o centro*/
			MC_heroi.alpha = 0;
			Main.getInstance().MC_tela.addChild(MC_heroi);
			Level.AR_herois.push(MC_heroi);							/** * heroi 2 tambem inserido na array de herois*/
			MC_HP2 = new HPplayer2();								/** * criação da barra de HP do player 2*/
			MC_HP2.x = 780;
			MC_HP2.y = 10;
			Main.getInstance().MC_tela.addChild(MC_HP2);
			
			Main.getInstance().MC_tela.addChild(campoTexto);
		}
		
		
		public override function update():void
		{	
			super.update();
			if (MC_upgrade == null)						/** * caso NAO HAJA upgrade, contador de criacao de upgrade diminui*/
			{
				IN_delayUpgrade--;
			}
			
			if (MC_upgrade != null)						/** * caso HAJA upgrade, contador de remoção de upgrade diminui*/
			{
				IN_delayUpgradeOff--;
				
			}
			
			if (IN_delayUpgrade == 0)					/** * criacao de upgrade qndo contador de criação chega a ZERO */
			{
				TipoUpgrade = Math.random();
				
				if (TipoUpgrade > 0 && TipoUpgrade < 0.9)
				{
					MC_upgrade = new upgrade();
					MC_upgrade.x = Math.random() * 700 + 50;
					MC_upgrade.y = Math.random() * 500 + 50;
					Main.getInstance().MC_tela.addChild(MC_upgrade);
					IN_delayUpgrade = 150;					/** * volta contador ao valor inicial*/
					TipoUpgradeS = "POWERUP";				/** * definindo na variavel que foi criado o upgrade de aumento de forca*/
				}
				
				else if (TipoUpgrade >= 0.9 && TipoUpgrade < 1)
				{
					MC_upgrade = new upgrade2();
					MC_upgrade.x = Math.random() * 700 + 50;
					MC_upgrade.y = Math.random() * 500 + 50;
					Main.getInstance().MC_tela.addChild(MC_upgrade);
					IN_delayUpgrade = 150;					/** * volta contador ao valor inicial*/
					TipoUpgradeS = "HPUP";					/** * definindo na variavel que foi criado o upgrade de recuperacao de HP*/
				}
			}
			
			if (IN_delayUpgradeOff == 0)				/** * remocao de upgrade qndo contador de remocao chega a ZERO */
			{
				Main.getInstance().MC_tela.removeChild(MC_upgrade);
				MC_upgrade = null;
				IN_delayUpgradeOff = 600;				/** * volta contador ao valor inicial*/
			}
		}
	}
}